#include<stdio.h>
#include<iostream>
#include<math.h>
using namespace std;
int a[1025][1025];
void di(int x,int r,int c){
	if(x==2){
		a[r][c]=0;
		return;
	};
	int i,j;
	for(i=r;i<=r+x/2-1;i++){
		for(j=c;j<=c+x/2-1;j++) a[i][j]=0;
	};
	di(x/2,r+x/2,c);
	di(x/2,r,c+x/2);
	di(x/2,r+x/2,c+x/2);
}
int main(){
	int n;
	scanf("%d",&n);
	int t=pow(2,n);
	int i,j;
	for(i=1;i<=t;i++){
	for(j=1;j<=t;j++) a[i][j]=1;
	};
	di(t,1,1);
	for(i=1;i<=t;i++){
		for(j=1;j<t;j++) printf("%d ",a[i][j]);
		printf("%d\n",a[i][t]);
	};
	return 0;
}
